﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Nucleic.Core.JhPay
{
    /// <summary>
    /// 商户-》银行 传递参数
    /// </summary>
    public class BankParam
    {
        /// <summary>
        /// 商户代码  --由建行统一分配
        /// </summary>
        public string MERCHANTID { get; set; }
        /// <summary>
        /// 商户柜台代码 --由建行统一分配
        /// </summary>
        public string POSID { get; set; }
        /// <summary>
        /// 分行代码 --由建行统一指定
        /// </summary>
        public string BRANCHID { get; set; }
        /// <summary>
        /// 定单号 --由商户提供，最长30位
        /// </summary>
        public string ORDERID { set; get; }
        /// <summary>
        /// 付款金额 --由商户提供，按实际金额给出支付完成后，请商户与收到的商户通知中的付款金额比对，确认两者金额一致；
        /// </summary>
        public string PAYMENT { set; get; }
        /// <summary>
        /// 币种 --缺省为01－人民币（只支持人民币支付）
        /// </summary>
        public string CURCODE { get; set; }
        /// <summary>
        /// 备注1 -一般作为商户自定义备注信息使用，可在对账单中显示。
        /// </summary>
        public string REMARK1 { get; set; }
        /// <summary>
        /// 备注2 --一般作为商户自定义备注信息使用，可在对账单中显示
        /// </summary>
        public string REMARK2 { get; set; }
        /// <summary>
        /// 交易码 --由建行统一分配为530590
        /// </summary>
        public string TXCODE { get; set; }
        /// <summary>
        /// MAC校验域 --采用标准MD5算法，由商户实现
        /// </summary>
        public string MAC { set; get; }
        /// <summary>
        /// 接口类型 --分行业务人员在P2员工渠道后台设置防钓鱼的开关。 1-	防钓鱼接口
        /// </summary>
        public string TYPE { get; set; }
        /// <summary>
        /// 公钥后30位 --商户从建行商户服务平台下载，截取后30位。仅作为源串参加MD5摘要，不作为参数传递
        /// </summary>
        public string PUB { get; set; }
        /// <summary>
        /// 网关类型 --默认送0 
        /// </summary>
        public string GATEWAY { get; set; }
        /// <summary>
        /// 客户端IP --客户在商户系统中的IP，即客户登陆（访问）商户系统时使用的ip）
        /// </summary>
        public string CLIENTIP { set; get; }
        /// <summary>
        /// 客户注册信息 --客户在商户系统中注册的信息，中文需使用escape编码
        /// </summary>
        public string REGINFO { set; get; }
        /// <summary>
        /// 商品信息 --客户购买的商品中文需使用escape编码
        /// </summary>
        public string PROINFO { get; set; }
        /// <summary>
        /// 商户URL --商户送空值即可；具体请看REFERER设置说明
        /// </summary>
        public string REFERER { get; set; }
        /// <summary>
        /// 订单超时时间 --格式：YYYYMMDDHHMMSS如：20120214143005 银行系统时间> TIMEOUT时拒绝交易，若送空值则不判断超时。当该字段有值时参与MAC校验，否则不参与MAC校验。
        /// </summary>
        public string TIMEOUT { get; set; }
        /// <summary>
        /// 交易类型 --JSAPI--公众号支付
        /// </summary>
        public string TRADE_TYPE { get; set; }
        /// <summary>
        /// 小程序/公众号的APPID --当前调起支付的小程序/公众号APPID
        /// </summary>
        public string SUB_APPID { get; set; }
        /// <summary>
        /// 用户子标识 --用户在小程序/公众号appid下的唯一标识，
        /// </summary>
        public string SUB_OPENID { get; set; }

    }
}
